The design and construction of deadlock-free concurrent systems
نویسنده
چکیده
The Design and Construction of Deadlock-Free Concurrent Systems Jeremy Martin It is a difficult task to produce software which is guaranteed never to fail, but it is a vital goal for which to strive in many real-life situations. The problem is especially complex in the field of parallel programming, where there are extra things that can go wrong. A particularly serious problem is deadlock. Here we consider how to construct systems which are guaranteed deadlock-free by design. Design rules, old and new, which eliminate deadlock are catalogued, and their theoretical foundation illuminated. Then the development of a software engineering tool is described which proves deadlock-freedom by verifying adherence to these methods. Use of this tool is illustrated with several case studies. The thesis concludes with a discussion of related issues of parallel program reliability.
منابع مشابه
A Design Strategy for Deadlock-Free Concurrent Systems
When building concurrent systems, it would be useful to have a collection of reusable processes to perform standard tasks. However, without knowing certain details of the inner workings of these components, one can never be sure that they will not cause deadlock when connected to some particular network. Here we describe a hierarchical method for designing complex networks of communicating proc...
متن کاملComponent-Based Construction of Deadlock-Free Systems
We propose a framework for building deadlock-free systems from deadlock-free components. The framework is based on a methodology for the layered construction of systems by superposing three layers. A layer of components, an interaction model and a restriction layer. The interaction model specifies the possible interactions between components. The restriction layer restricts the behavior of the ...
متن کاملConstruction of Deadlock-free Designs of Communication Protocols from Observation
Reverse engineering in distributed systems is essential to recovering the designs of large and complex distributed systems that evolve often without proper documentation. This paper proposes rules for the automated construction of deadlock-free designs of communication protocols from the execution histories of existing systems, defines the properties of the constructed designs and identifies th...
متن کاملA Technique of State Space Search Based on Unfolding
Unfoldings of Petri nets provide a method of searching the state space of concurrent systems without considering all possible interleavings of concurrent events. A procedure is given for constructing the unfolding of a Petri net, terminating the construction when it is suucient to represent all reachable markings. This procedure is applied to hazard and deadlock detection in asynchronous circui...
متن کاملAn implementation of the SANE Virtual Processor using POSIX threads
The SANE Virtual Processor is an abstract concurrent programming model that is both deadlock free and supports e cient implementation. It is captured by the μTC programming language. The work presented in this paper covers a portable implementation of this model as a C++ library on top of POSIX Threads. Programs in μTC can be translated to the standard C++ syntax and linked with this library to...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 1996